package com.xinwei.linearExercise;

import java.util.LinkedList;
import java.util.List;

/**
 * 队列
 * 队列频繁的在头部和尾部添加元素，所以使用双向链表，复杂度均为O(1)
 */
public class Queue<E> {
    private List<E> list = new LinkedList<>();

    public int size() {
        return list.size();
    }

    public boolean isEmpty() {
        return list.isEmpty();
    }

    // 入队
    public void enQueue(E element) {
        list.add(element);
    }

    public E deQueue() {
        return list.remove(0);
    }

    public E front() {
        return list.get(0);
    }


}
